<?php

require_once DCES_BASE_DIR . 'utils/Problem.php';

abstract class ServerPlugin {

    /**
     * @var $problem Problem
     */
    protected $problem;

    public function __construct($problem) {
        //may be overridden, but must call parent constructor
        $this->problem = $problem;
    }

    /** checks solution
     * @param $submission array the submission to test
     * @param $submissionID int id of submission
     * @return array() hash map string->string with columns data
     */
    public abstract function checkSolution($submission, $submission_id);

}

?>